package net.yla.smartbus.module.ba.area.mapper;

import net.yla.smartbus.module.ba.area.entity.BaRegionsDo;
import net.yla.smartbus.module.ba.area.form.AreaForm;
import net.yla.smartbus.module.ba.area.query.AreaQuery;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author 默苍离
 * @date 2021/6/26 9:42
 * <p>
 * ******************************************
 * @annotation:
 */
@Repository
public interface AreaMapper {

    /**
     * 获取所有区域
     *
     * @param query
     * @return
     */
    List<BaRegionsDo> getAreas(AreaQuery query);


    /**
     * 根据id查询一条区域数据
     *
     * @param regionId
     * @return
     */
    BaRegionsDo getOneArea(Integer regionId);


    /**
     * 获取所有区域数量
     *
     * @param query
     * @return
     */
    Integer getAreasCount(AreaQuery query);


    /**
     * 根据区域id进行删除
     *
     * @param ids 区域信息表 主键 id 集合
     * @return
     */
    Integer deleteArea(Integer[] ids);


    /**
     * 添加区域
     *
     * @param form
     * @return
     */
    Integer addArea(AreaForm form);


    /**
     * 更新区域
     *
     * @param form
     * @return
     */
    Integer updateArea(AreaForm form);



    /*
      TODO
    待实现 接口  判断区域名称是否已经存在
    */

}
